<?php

namespace App\Http\Controllers;

use App\Models\AdminModels;
use Illuminate\Http\Request;

class LoginController extends Controller
{
    // 显示登录页面
    public function index(){
        // 判断是否登录，如果登录 无需登录
        if (session('username')){
            return redirect()->action([IndexController::class, 'index']);
        }
        return view('login.login');
    }
    // 登录
    public function doLogin(Request $request){
        // 接收值
        $username = $request->input('username');
        $password = $request->input('password');
        // 查询账号是否存在
        $admin = AdminModels::where('username', '=', $username)->first();
        if (empty($admin)){
            return response()->json([
               'code' => 0,
               'msg' => '账号不存在',
               'data' => null
            ]);
        }
        //验证密码是否正确
        if (md5($password) != $admin->password){
            return response()->json([
               'code' => 0,
               'msg' => '密码错误',
               'data' => null
            ]);
        }

        // 更新信息
        $admin->last_login_time = date('Y-m-d H:i:s');
        $admin->last_login_ip = $request->ip();
        $admin->save();

        // 保存登录信息
        $request->session()->put('username', $username);

            return response()->json([
                'code' => 1,
                'msg' => '登录成功',
                'data' => null
            ]);

    }

    // 退出登录
    public function logout(Request $request){
        // 清空session
        $request->session()->flush();
        //返回登录页
        return redirect()->action([LoginController::class, 'index']);
    }
}
